//package com.shwread.android.qysw.activity;
//
//import java.util.ArrayList;
//import java.util.List;
//
//import logic.bean.UserBean;
//import logic.constants.Const;
//import logic.constants.DefaultConsts;
//import logic.dao.UserDao;
//import logic.util.Util;
//
//import org.geometerplus.zlibrary.core.application.SysApplication;
//
//import android.content.Context;
//import android.content.Intent;
//import android.os.Bundle;
//import android.os.Handler;
//import android.os.Message;
//import android.support.v4.view.PagerAdapter;
//import android.support.v4.view.ViewPager;
//import android.support.v4.view.ViewPager.OnPageChangeListener;
//import android.view.View;
//import android.view.View.OnClickListener;
//import android.widget.Button;
//import android.widget.LinearLayout;
//import android.widget.TextView;
//
//import com.shwread.android.qysw10000133.R;
//import com.shwread.android.ui.widget.LoadingView;
//import com.shwread.android.ui.widget.MyAppointmentView;
//import com.tgx.tina.android.task.ATaskService;
//
//
///**
// * 我的预约列表页面
// *
// * @author zhangnannan
// */
//public class MyAppointmentListActivity
//        extends
//        BaseBusinessActivity
//        implements
//        OnClickListener
//{
//	private TextView                  tvTitle;
//	private Button                    btnBack;
//	private Context                   context;
//	//	private MyListView              lvMyAppointment;
//	//	private PullToRefreshScrollView psView;
//	private LoadingView               loadingView;
//	private LinearLayout              llayContextView;
//	//	private List<AppointmentInfo>   myAppointmentInfo  = new ArrayList<AppointmentInfo>();
//	//
//	//	private boolean                 isHasMore          = true;
//	//	private long                    lastItemCreatTime  = 0L;
//	//	private int                     getDataType        = 0;                               //0 首次加载  1刷新  2加载更多
//	//	private int                     pageLength         = 3;
//	//	private LinearLayout            llayEmpty;
//
//	private final int                 TAB_MY_APPOINTMENT = 0;
//	private final int                 TAB_MY_TAKE_OUT    = 1;
//	private TextView                  tvTabAppointment, tvTabTakeOut;
//
//	private ViewPager                 viewPager;
//	private List<View>                lvViewPager;
//	private ViewPagerAdapter          viewPagerAdapter;
//	private MyAppointmentListActivity mActivity;
//	private boolean                   isRunning;
//	/** 应用是否退出 */
//	public boolean                    isAppExit          = false;
//
//	@Override
//	public Handler getUIHandler() {
//		return handler;
//	}
//
//	private Handler handler = new Handler()
//	                        {
//		                        public void handleMessage(Message msg) {
//			                        switch (msg.what) {
//										case DefaultConsts.MY_APPOINTMENT_SUCCESS:
//											loadingView.changeLoadingStatus(2);
//											loadingView.setVisibility(View.GONE);
//											llayContextView.setVisibility(View.VISIBLE);
//											break;
//										case DefaultConsts.MY_APPOINTMENT_FAIL:
//											loadingView.changeLoadingStatus(2);
//											loadingView.setVisibility(View.GONE);
//											llayContextView.setVisibility(View.VISIBLE);
//											break;
//										default:
//											break;
//									}
//								};
//	                        };
//
//	@Override
//	protected void onCreate(Bundle savedInstanceState) {
//		super.onCreate(savedInstanceState);
//		setContentView(R.layout.om_mylist);
//		mAService = new ATaskService();
//		mAService.startAService(this);
//		SysApplication.getInstance().finish();
//		isRunning = getIntent().getBooleanExtra("Running", false);
//		if (Util.isEmpty(Const.phone_number))
//		{
//			isAppExit = true;
//			UserBean user = UserDao.getInstance(this).getLastLoginUser();
//			Const.phone_number = user.getAccount();
//			Const.login_key = user.getKey();
//		}
//		context = this;
//		mActivity = this;
//		findView();
//		Bundle bundle = getIntent().getExtras();
//		addListener();
//		initData();
//		if (bundle != null)
//		{
//			setSelect(bundle.getInt(DefaultConsts.FROM_TYPE));
//			viewPager.setCurrentItem(bundle.getInt(DefaultConsts.FROM_TYPE) == 0 ? TAB_MY_APPOINTMENT : TAB_MY_TAKE_OUT);
//		}
//		initLoadingView();
//	}
//
//	private void findView() {
//		tvTitle = (TextView) findViewById(R.id.common_header_name);
//		tvTitle.setText("我的预约");
//		btnBack = (Button) findViewById(R.id.common_header_back);
//		btnBack.setVisibility(View.VISIBLE);
//
//		tvTabAppointment = (TextView) findViewById(R.id.om_mylist_appointment);
//		tvTabTakeOut = (TextView) findViewById(R.id.om_mylist_take_out);
//		tvTabAppointment.setSelected(true);
//		viewPager = (ViewPager) findViewById(R.id.om_mylist_view);
//		loadingView = (LoadingView) findViewById(R.id.om_my_appointment_loading_view);
//		llayContextView = (LinearLayout) findViewById(R.id.om_my_context_view);
//	}
//
//	private void initData() {
//		MyAppointmentView myAppointmentView = new MyAppointmentView(mActivity);
//		//		MyTakeOutView myTakeOutView = new MyTakeOutView(mActivity);
//
//		lvViewPager = new ArrayList<View>();
//		lvViewPager.add(myAppointmentView);
//		//		lvViewPager.add(myTakeOutView);
//
//		viewPagerAdapter = new ViewPagerAdapter();
//		viewPager.setAdapter(viewPagerAdapter);
//		viewPager.setCurrentItem(TAB_MY_APPOINTMENT);
//	}
//
//	private void addListener() {
//		btnBack.setOnClickListener(this);
//		tvTabAppointment.setOnClickListener(this);
//		tvTabTakeOut.setOnClickListener(this);
//
//		viewPager.setOnPageChangeListener(new OnPageChangeListener()
//		{
//
//			@Override
//			public void onPageSelected(int arg0) {
//				setSelect(arg0);
//				viewPager.setCurrentItem(arg0);
//				//				((IRefreshViewListener)(lvViewPager.get(arg0))).refreshView();
//			}
//
//			@Override
//			public void onPageScrolled(int arg0, float arg1, int arg2) {
//
//			}
//
//			@Override
//			public void onPageScrollStateChanged(int arg0) {
//
//			}
//		});
//	}
//
//	@Override
//	public void onClick(View v) {
//		switch (v.getId()) {
//			case R.id.common_header_back:
//				onBackPressed();
//				finish();
//				break;
//			case R.id.om_mylist_appointment:
//				setSelect(TAB_MY_APPOINTMENT);
//				viewPager.setCurrentItem(TAB_MY_APPOINTMENT);
//				break;
//			case R.id.om_mylist_take_out:
//				setSelect(TAB_MY_TAKE_OUT);
//				viewPager.setCurrentItem(TAB_MY_TAKE_OUT);
//				break;
//			default:
//				break;
//		}
//	}
//
//	@Override
//	protected void onDestroy() {
//		super.onDestroy();
//		if (mAService != null)
//		{
//			mAService.stopAService();
//		}
//	}
//
//	private void setSelect(int a) {
//		tvTabAppointment.setSelected(a == 0 ? true : false);
//		tvTabTakeOut.setSelected(a == 1 ? true : false);
//	}
//
//	private void initLoadingView() {
//		loadingView.setLoadingAnim(R.anim.home_progress);
//		loadingView.changeLoadingStatus(0);
//		loadingView.setVisibility(View.VISIBLE);
//		llayContextView.setVisibility(View.GONE);
//		//			loadingView.setEmptyView(R.drawable.bg_region_blank, R.string.order_appointment_empty_text);//重新设置为空的图片和文案
//	}
//
//	//	/**
//	//	 * @param info
//	//	 */
//	//	private void clickBottomText2(AppointmentInfo info) {
//	//		//		Utils.showToast(context, "您点击了点餐");
//	//		//		switch (info.getStatus()) {
//	//		//			case 0:
//	//		//
//	//		//				break;
//	//		//			case 1:
//	//		//
//	//		//				break;
//	//		//			case 2:
//	//		//
//	//		//				break;
//	//		//
//	//		//			default:
//	//		//				break;
//	//		//		}
//	//
//	//	}
//	//
//	//	/**
//	//	 * 取消预约
//	//	 */
//	//	private void clickCancelAppointment(AppointmentInfo info) {
//	//		//		Utils.showToast(context, "您点击了取消预约");
//	//		//		long appiontmentId;
//	//		//		String remark;
//	//		//		appiontmentId = info.getAppiontmentId();
//	//		//		if (Utils.isEmpty(info.getRemark()))
//	//		//		{
//	//		//			remark = "";
//	//		//		}
//	//		//		else
//	//		//		{
//	//		//			remark = info.getRemark();
//	//		//		}
//	//		//
//	//		//		ActionHelp.cancelAppiontment(context, appiontmentId, remark, new CancelAppointmentHandler());
//	//	}
//	//
//
//	//
//	//	private void getMyAppointmentList() {
//	//		ActionHelp.qryAppiontmentList(context, lastItemCreatTime, pageLength, new GetAppointmentListHandler());
//	//	}
//	//
//	//	/**
//	//	 * 加载更多
//	//	 */
//	//	private void loadMore() {
//	//		if (isHasMore)
//	//		{
//	//			this.getDataType = 2;
//	//			getMyAppointmentList();
//	//			PullToRefreshUtil.initLabel(context, psView);
//	//		}
//	//		else
//	//		{
//	//			PullToRefreshUtil.setLoadLabel(psView, "没有更多了");
//	//			psView.onRefreshComplete();
//	//		}
//	//	}
//	//
//	//	/**
//	//	 * 刷新页面数据
//	//	 */
//	//	private void refrush() {
//	//		this.getDataType = 1;
//	//		lastItemCreatTime = 0L;
//	//		PullToRefreshUtil.initLabel(context, psView);
//	//		getMyAppointmentList();
//	//	}
//	//
//	//	class CancelAppointmentHandler
//	//	        extends
//	//	        TextHttpResponseHandler
//	//	{
//	//
//	//		@Override
//	//		public void onFailure(int arg0, Header[] arg1, String arg2, Throwable arg3) {
//	//			Logger.e(arg2);
//	//			Utils.showToast(context, "取消预约失败");
//	//		}
//	//
//	//		@Override
//	//		public void onSuccess(int arg0, Header[] arg1, String arg2) {
//	//			Logger.i(arg2);
//	//			Utils.showToast(context, "取消预约成功");
//	//			refrush();
//	//		}
//	//
//	//	}
//	//
//	//	class GetAppointmentListHandler
//	//	        extends
//	//	        ObjectHttpResponseHandler<List<AppointmentInfo>>
//	//	{
//	//
//	//		@Override
//	//		public void onFailure(int arg0, Header[] arg1, String arg2, Throwable arg3) {
//	//			Logger.i(arg2);
//	//			if (getDataType == 0)
//	//			{
//	//				//				loadingView.changeLoadingStatus(-1);
//	//				lvMyAppointment.setVisibility(View.GONE);
//	//				llayEmpty.setVisibility(View.VISIBLE);
//	//			}
//	//			if (getDataType != 0)
//	//			{
//	//				psView.onRefreshComplete();
//	//			}
//	//		}
//	//
//	//		@Override
//	//		public void onSuccess(int arg0, Header[] arg1, List<AppointmentInfo> arg2, String arg3) {
//	//			if (getDataType != 0)
//	//			{
//	//				psView.onRefreshComplete();
//	//			}
//	//			if (arg2 != null && arg2.size() > 0)
//	//			{
//	//				lastItemCreatTime = arg2.get(arg2.size() - 1).getCreateTime();
//	//				if (arg2.size() < pageLength)
//	//				{
//	//					isHasMore = false;
//	//				}
//	//				else
//	//				{
//	//					isHasMore = true;
//	//				}
//	//				if (getDataType == 0)
//	//				{
//	//					//					loadingView.changeLoadingStatus(2);
//	//					//					loadingView.setVisibility(View.GONE);
//	//				}
//	//				else if (getDataType != 2)
//	//				{
//	//					if (myAppointmentInfo.size() > 0) myAppointmentInfo.clear();
//	//				}
//	//				lvMyAppointment.setVisibility(View.VISIBLE);
//	//				llayEmpty.setVisibility(View.GONE);
//	//				myAppointmentInfo.addAll(arg2);
//	//
//	//			}
//	//			else
//	//			{
//	//				if (getDataType != 2)
//	//				{
//	//					//					loadingView.changeLoadingStatus(1);
//	//					lvMyAppointment.setVisibility(View.GONE);
//	//					llayEmpty.setVisibility(View.VISIBLE);
//	//				}
//	//			}
//	//
//	//		}
//	//
//	//		@Override
//	//		public Type getType() {
//	//			// TODO Auto-generated method stub
//	//			return new TypeToken<List<AppointmentInfo>>()
//	//			{
//	//			}.getType();
//	//		}
//	//
//	//	}
//	//
//	//	private class PSlistener
//	//	        implements
//	//	        IPSListener
//	//	{
//	//
//	//		@Override
//	//		public void psRefrush() {
//	//			refrush();
//	//		}
//	//
//	//		@Override
//	//		public void psLoadingMore() {
//	//			loadMore();
//	//		}
//	//
//	//	}
//	//
//	//	public interface IPSListener
//	//	{
//	//		void psRefrush();
//	//
//	//		void psLoadingMore();
//	//	}
//
//	class ViewPagerAdapter
//	        extends
//	        PagerAdapter
//	{
//
//		@Override
//		public int getCount() {
//			// TODO Auto-generated method stub
//			return lvViewPager.size();
//		}
//
//		@Override
//		public boolean isViewFromObject(View arg0, Object arg1) {
//			// TODO Auto-generated method stub
//			return arg0 == arg1;
//		}
//
//		@Override
//		public Object instantiateItem(View container, int position) {
//			((ViewPager) container).addView(lvViewPager.get(position));
//			return lvViewPager.get(position);
//		}
//
//		@Override
//		public void destroyItem(View container, int position, Object object) {
//			((ViewPager) container).removeView(lvViewPager.get(position));
//
//		}
//
//	}
//
//	@Override
//	public void onBackPressed() {
//		super.onBackPressed();
//		if (!existMainActivity())
//		{
//			startActivity(new Intent(this, MainActivity.class).setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP));
//		}
//	}
//}
